package com.sunny.example;

import java.util.Scanner;
import java.util.Stack;

/**
 * 句子逆序
 * 描述
 * <p>
 * 将一个英文语句以单词为单位逆序排放。例如“I am a boy”，逆序排放后为“boy a am I”
 * 所有单词之间用一个空格隔开，语句中除了英文字母外，不再包含其他字符
 * <p>
 * 数据范围：输入的字符串长度满足 1≤n≤1000 1 \le n \le 1000 \ 1≤n≤1000
 * <p>
 * 注意本题有多组输入
 * 输入描述：
 * <p>
 * 输入一个英文语句，每个单词用空格隔开。保证输入只包含空格和字母。
 * 输出描述：
 * <p>
 * 得到逆序的句子
 */
public class HJ13 {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNext()) {
            String input = scanner.nextLine();
            if (null == input || "".equals(input)) {
                return;
            }

            String[] englishes = input.split(" ");
            if (englishes != null && englishes.length > 0) {
                Stack<String> stack = new Stack<>();
                StringBuffer stringBuffer = new StringBuffer();
                for (String str : englishes) {
                    if (str.matches("^[a-zA-Z]*")) {//只有英文
                        stack.push(str);
                    }
                }

                while (!stack.isEmpty()) {
                    stringBuffer.append(stack.pop()+" ");
                }
                System.out.println(stringBuffer.toString());
            }

        }
    }
}
